import axios from "axios";
import nProgress from "nprogress";
import 'nprogress/nprogress.css';
// 创建axios实例
const request =axios.create({
    //使用环境变量，来区分当前的环境，并拿到代理的前缀
    baseURL:process.env.VUE_APP_API,
    timeout:10000
})

// 添加请求拦截器
request.interceptors.request.use(
     // 在发送请求之前做些什么
    (config)=>{
        nProgress.start()
        return config;
    },
    (error)=>{
         // 对请求错误做些什么
         nProgress.done()
         return Promise.reject(error)
    }
    );
    // 添加响应拦截器
    request.interceptors.response.use(
        (response)=>{
           // 对响应数据做点什么  
           nProgress.done()
          if(response.data.code===200){
            return response.data.data;
          }else{
             //自己封装一个错误对象
            return Promise.reject({message:response.data.message})
          }
        },
        (error)=>{
            // 对响应错误做点什么
            nProgress.done()
            return Promise.reject(error) 
        }
    );

    export default request

